package com.ruoyi.jwxt.service;

import java.util.List;

import com.ruoyi.jwxt.domain.PO.JwxtLabMaintenance;
import com.ruoyi.jwxt.domain.PO.JwxtTeacherApplication;

/**
 * 教师实验课申请登记Service接口
 */
public interface IJwxtTeacherApplicationService {

    /**
     * 新增申请，填写新的申请，新申请的状态为“未排课”
     */
    public int insert(JwxtTeacherApplication jwxtTeacherExperimentApplication);

    /**
     * 批量删除教师实验课申请登记
     */
    public int delete(Long[] applicationIds);

    /**
     * 删除单个教师实验课申请登记
     */
    public int delete(Long applicationId);

    /**
     * 查询教师实验课申请登记列表
     */
    public List<JwxtTeacherApplication> select(
            JwxtTeacherApplication jwxtTeacherExperimentApplication);

    /**
     * 查询教师实验课申请登记
     */
    public JwxtTeacherApplication select(Long applicationId);

    /**
     * 修改申请，对处于“未排课”状态的申请可以修改内容
     */
    public int update(JwxtTeacherApplication jwxtTeacherExperimentApplication);

    /**
     * 新增报修，填写新的报修，新报修的状态为“未维修”
     */
    public int insertApplication(JwxtLabMaintenance jwxtExperimentEquipmentMaintenance);

    /**
     * 批量删除教师实验课申请登记
     */
    public int deleteApplication(Long[] experimentApplicationIds);

    /**
     * 删除教师单个实验课申请登记
     */
    public int deleteApplication(Long experimentApplicationId);

    /**
     * 列出教师的所有设备报修(报修状态有：已维修、未维修、维修中)
     */
    public List<JwxtLabMaintenance> selectApplication(Long teacherId);

    /**
     * 修改教师的设备报修
     */
    public int updateApplication(JwxtLabMaintenance jwxtExperimentEquipmentMaintenance);

}
